线性查找(Linear Search)
🧑💻 作者: 一可爱小白兔
📦 版本: 1.0.0
📄 字数(字): 0
⏳ 时长(min): 0
📅 发表于: 2025-04-18
⏱️ 更新于: 2026-01-30
基于索引的for循环
cpp
int linear_search(const vector<int> &nums, int target) {
for (auto i = 0; i < nums.size(); i++) {
if (nums[i] == target)
return i; // 找到时返回索引
}
return -1;
}1
2
3
4
5
6
7
2
3
4
5
6
7
基于范围的for循环
cpp
int linear_search(const vector<int> &nums, int target) {
int index = 0;
for (auto num: nums) {
if (num == target)
return index;
index++; // 没找到时,索引加1
}
return -1;
}1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
基于STL
cpp
int linear_search(const vector<int> &nums, int target) {
auto it = find(nums.begin(), nums.end(), target); // 找到返回迭代器,没找到返回nums.end()
if (it != nums.end())
return distance(nums.begin(), it); // 返回迭代器it和nums.begin()之间的距离
return -1;
}1
2
3
4
5
6
2
3
4
5
6